

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<script type="text/javascript" src="helpman_topicinit.js"></script>

<title>Composite Structure Diagram [Enterprise Architect User Guide]</title>

<meta name="keywords" content="Enterprise Architect, Sparx Systems, UML, Diagram,Diagram Composite Structure,Composite Structure Diagram,Composite Structure Diagram Description,Composite Structure Diagram Example,Composite Structure Diagram Elements And Connectors">
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<meta http-equiv="Content-Style-Type" content="text/css" />

<link type="text/css" href="default.css" rel="stylesheet" />
<style type="text/css">
  A, A:Visited
  {
    color: #00F;
  }

  A:Active, A:Hover
  {
    color: #F00;
  }

  OL
  {
    margin: 5px 0 5px 48px;
  }

  UL
  {
    margin-bottom: 3px;
    margin-top: 0;
  }

  #nsr
  {
    background-color: #D4DFFF;
  }

  #nsr A
  {
    text-decoration: none;
  }

  #mainbody
  {
    padding: 8px;
  }

  .p_BodyText
  {
    padding: 5px 0;
  }
</style>



<style type="text/css" media="screen">
  BODY
  {
    background-color: #FFFFFF;
  }

  #nsr
  {
    padding: 6px 6px 0 6px;
    border-bottom: none;
    vertical-align: top;
    z-index: 2;
    visibility: visible;
    left: 0;
    top: 0;
    position: absolute;
  }

  #mainbody
  {
    left: 0;
    top: 0;
    margin: 0;
    position: absolute;
    padding: 10px;
    overflow: auto;
    height: 100%;
    z-index: 1;
    background-repeat: no-repeat;
    background-position: bottom right;
    background-attachment: fixed;
  }
</style>

<style type="text/css" media="print">
  #nsr
  {
    visibility: none;
  }

  #mainbody
  {
    overflow: visible;
  }
</style>
<script type="text/javascript" language="JavaScript" src="nonscroll.js"></script>

</head>
<body scroll="no">

<div id="page">



        <div id="content">
          <div id="content-inner">
          



  
          <div id="nsr">
            <table border="0" cellspacing="0" cellpadding="4" width="100%">
              <tr valign="top">
                <td align="left">
  


                  <p class="p_Heading1"><span class="f_Heading1">Composite Structure Diagram</span></p>



  
                </td>
                <td align="right">
                  <a href="introduction.htm" onmouseover="document.images.main.src='button_main_h.gif'" onmouseout="document.images.main.src='button_main.gif'">
                    <img name="main" src="button_main.gif" border=0 alt="Return to Introduction">
                  </a>&nbsp;
    
                  <a href="objectdiagram.htm" onmouseover="document.images.prev.src='button_prev_h.gif'" onmouseout="document.images.prev.src='button_prev.gif'">
                    <img name=prev src="button_prev.gif" border=0 alt="Previous page" />
                  </a>&nbsp;
    
    
    
                  <a href="properties.htm" onmouseover="document.images.next.src='button_next_h.gif'" onmouseout="document.images.next.src='button_next.gif'">
                    <img name=next src="button_next.gif" border=0 alt="Next page" />
                  </a>
    
    
                </td>
              </tr>
            </table>
          </div>
          <div id="mainbody">
  


                <p class="p_BodyText"><span class="f_BodyText">A </span><span class="f_BodyText" style="font-style: italic;">Composite Structure</span><span class="f_BodyText"> diagram reflects the internal collaboration of <a href="class.htm">Classes</a>, <a href="interface.htm">Interfaces</a> or <a href="component.htm">Components</a> (and their <a href="properties.htm">Properties</a>) to describe a functionality. Composite Structure diagrams are similar to </span><span class="f_BodyText" style="font-style: italic;"><a href="classdiagram.htm">Class diagrams</a></span><span class="f_BodyText">, except that they model a specific usage of the structure. Class diagrams model a static view of Class structures, including their attributes and behaviors. A Composite Structure diagram is used to express run-time architectures, usage patterns and the participating elements' relationships, which might not be reflected by static diagrams.</span></p>
<p class="p_BodyText"><span class="f_BodyText">In a Composite Structure diagram, Classes are accessed as <a href="part.htm">Parts</a> or run-time instances fulfilling a particular role. These Parts can have multiplicity, if the role filled by the Class requires multiple instances. </span><span class="f_BodyText" style="font-style: italic;"><a href="port.htm">Ports</a></span><span class="f_BodyText"> defined by a Part's Class should be represented in the composite structure, maintaining that all connecting Parts provide the required interfaces specified by the Port. There is extensive flexibility, and an ensuing complexity, that come with modeling composite structures. To optimize your modeling, consider building <a href="collaboration2.htm">Collaborations</a> to represent reusable patterns responding to your design issues.</span></p>
<p class="p_SubHeadingL1"><span class="f_SubHeadingL1">Example Diagram</span></p>
<p class="p_BodyText"><span class="f_BodyText">The following diagram shows a Collaboration used in Composite Structure diagrams to model common patterns. This particular example shows a relationship for performing an installation.</span></p>
<p class="p_TextIndentedL2"><img src="collaboration%20arrangement.png" width="396" height="282" border="0" alt="Collaboration Arrangement"></p>
<p class="p_BodyText"><span class="f_BodyText">The following diagram uses the</span><span class="f_BodyText" style="font-style: italic;"> Install</span><span class="f_BodyText"> Collaboration in a <a href="colloccurrence.htm">Collaboration Occurrence</a>, and applies it to the </span><span class="f_BodyText" style="font-style: italic;">UtilLoad</span><span class="f_BodyText"> Class via a </span><span class="f_BodyText">&laquo;</span><span class="f_BodyText" style="font-style: italic;">represents</span><span class="f_BodyText">&raquo;</span><span class="f_BodyText"> relationship. This indicates that the classifier </span><span class="f_BodyText">UtilLoad</span><span class="f_BodyText"> uses the collaboration pattern within its implementation.</span></p>
<p class="p_TextIndentedL2"><img src="composite%20structure%20-%20represents%20link.png" width="326" height="92" border="0" alt="Composite Structure - Represents Link"></p>
<p class="p_BodyText"><span class="f_BodyText">For further examples of Composite Structure diagrams, see the </span><span class="f_UIControl">Toolbox</span><span class="f_BodyText"> elements listed below.</span></p>
<p class="p_SubHeadingL1"><span class="f_SubHeadingL1">Toolbox Elements and Connectors</span></p>
<p class="p_BodyText"><span class="f_BodyText">Select Composite Structure diagram elements and connectors from the <a href="compositegroup.htm">Composite pages</a> of the Enterprise Architect UML</span><span class="f_UIControl"> Toolbox</span><span class="f_BodyText" style="font-style: italic;">.</span></p>
<p class="p_BodyText"><span class="f_BodyText">Enterprise Architect also supports a stereotyped Collaboration to represent a <a href="business_interaction.htm">Business Use Case Realization</a> in business modeling.</span></p>
<div style="text-align: left; text-indent: 0px; padding: 0px 0px 0px 0px; margin: 5px 0px 5px 13px;"><table cellspacing="0" cellpadding="2" border="0" style="border: none; border-spacing:0px;">
<tr style="text-align:left;vertical-align:bottom;">
<td valign="bottom" width="955" bgcolor="#efeff7" style="width:955px; background-color:#efeff7;"><p class="p_TiporNote" style="border-top: none; border-right: none; border-left: none;"><span class="f_TiporNote">Tip:</span></p>
</td>
</tr>
<tr style="text-align:left;">
<td width="955" bgcolor="#f7f7ff" style="width:955px; background-color:#f7f7ff;"><p class="p_TiporNoteText"><span class="f_TiporNoteText">Click on the following elements and connectors for more information.</span></p>
</td>
</tr>
</table>
</div>
<div style="text-align: left; text-indent: 0px; padding: 0px 0px 0px 0px; margin: 5px 0px 5px 13px;"><table cellspacing="0" cellpadding="0" border="0" style="border: none; border-spacing:0px; border-collapse: collapse;">
<tr style="text-align:left;vertical-align:top;">
<td valign="top" width="240" bgcolor="#e3e6ed" style="width:240px; background-color:#e3e6ed; border: solid 1px #000000;"><p class="p_Tableheader"><span class="f_Tableheader">Composite Structure Diagram Elements</span></p>
</td>
<td valign="top" width="255" bgcolor="#e3e6ed" style="width:255px; background-color:#e3e6ed; border: solid 1px #000000;"><p class="p_Tableheader"><span class="f_Tableheader">Composite Structure Diagram Connectors</span></p>
</td>
</tr>
<tr style="text-align:left;vertical-align:top;">
<td valign="top" width="240" style="width:240px; border: solid 1px #000000;"><p class="p_Tabletext"><a href="class.htm"><img src="e_class.png" width="168" height="23" border="0" alt="e_Class"></a></p>
</td>
<td valign="top" width="255" style="width:255px; border: solid 1px #000000;"><p class="p_Tabletext"><a href="connector2.htm"><img src="c_connector.png" width="166" height="25" border="0" alt="c_Connector"></a></p>
</td>
</tr>
<tr style="text-align:left;vertical-align:top;">
<td valign="top" width="240" style="width:240px; border: solid 1px #000000;"><p class="p_Tabletext"><a href="interface.htm"><img src="e_interface.png" width="168" height="24" border="0" alt="e_Interface"></a></p>
</td>
<td valign="top" width="255" style="width:255px; border: solid 1px #000000;"><p class="p_Tabletext"><a href="assembly.htm"><img src="c_assembly.png" width="167" height="19" border="0" alt="c_Assembly"></a></p>
</td>
</tr>
<tr style="text-align:left;vertical-align:top;">
<td valign="top" width="240" style="width:240px; border: solid 1px #000000;"><p class="p_Tabletext"><a href="part.htm"><img src="e_part.png" width="169" height="21" border="0" alt="e_Part"></a></p>
</td>
<td valign="top" width="255" style="width:255px; border: solid 1px #000000;"><p class="p_Tabletext"><a href="rolebinding.htm"><img src="c_rolebinding.png" width="169" height="21" border="0" alt="c_RoleBinding"></a></p>
</td>
</tr>
<tr style="text-align:left;vertical-align:top;">
<td valign="top" width="240" style="width:240px; border: solid 1px #000000;"><p class="p_Tabletext"><a href="port.htm"><img src="e_port.png" width="170" height="20" border="0" alt="e_Port"></a></p>
</td>
<td valign="top" width="255" style="width:255px; border: solid 1px #000000;"><p class="p_Tabletext"><a href="represents.htm"><img src="c_represents.png" width="168" height="24" border="0" alt="c_Represents"></a></p>
</td>
</tr>
<tr style="text-align:left;vertical-align:top;">
<td valign="top" width="240" style="width:240px; border: solid 1px #000000;"><p class="p_Tabletext"><a href="collaboration2.htm"><img src="e_collaboration.png" width="167" height="23" border="0" alt="e_Collaboration"></a></p>
</td>
<td valign="top" width="255" style="width:255px; border: solid 1px #000000;"><p class="p_Tabletext"><a href="occurrence.htm"><img src="c_occurence.png" width="168" height="23" border="0" alt="c_Occurence"></a></p>
</td>
</tr>
<tr style="text-align:left;vertical-align:top;">
<td valign="top" width="240" style="width:240px; border: solid 1px #000000;"><p class="p_Tabletext"><a href="exposeinterface.htm"><img src="e_exposeinterface.png" width="168" height="21" border="0" alt="e_ExposeInterface"></a></p>
</td>
<td valign="top" width="255" style="width:255px; border: solid 1px #000000;"><p class="p_Tabletext"><a href="delegate.htm"><img src="c_delegate.png" width="168" height="22" border="0" alt="c_Delegate"></a></p>
</td>
</tr>
</table>
</div>
<p class="p_SubHeadingL1"><span class="f_SubHeadingL1">OMG UML Specification</span></p>
<p class="p_BodyText"><span class="f_BodyText">The OMG UML specification (</span><span class="f_BodyText" style="font-style: italic;">UML Superstructure Specification, v2.1.1, p. 193</span><span class="f_BodyText">) states:</span></p>
<p class="p_OMGText"><span class="f_OMGText">A composite structure diagram depicts the internal structure of a classifier, as well as the use of a collaboration in a collaboration use.</span></p>




            </div>
          </div>
        </div>



</div>


</body>
</html>
